package top.as.sean.dao.vo.system;

import annotation.DictField;
import lombok.Builder;
import lombok.Data;
import top.as.sean.dao.plugin.DictPlugin;

import java.util.List;
import java.util.Set;

/**
 * 登录后返回的用户信息
 *
 * @author: ArchieSean
 * @create: 2022/11/7
 */
@Data
public class UserInfo {
    /**
     * 按钮级权限列表
     */
    private Set<String> buttonList;

    /**
     * 用户id
     */
    private Long userId;
    /**
     * 部门id
     */
    private Long deptId;
    /**
     * 部门名称
     */
    private String deptName;
    /**
     * 账号
     */
    private String username;
    /**
     * 昵称
     */
    private String nickName;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 手机号
     */
    private String phoneNumber;
    /**
     * 性别，0: 男，1：女
     */
    private String sex;

    /**
     * 性别字典翻译
     */
    @DictField(key = "user_sex", clazz = DictPlugin.class, method = "getDataDict")
    private String sexDict;
    /**
     * 头像
     */
    private String avatar;
    /**
     * 角色
     */
    private Set<String> roleNames;

}
